feat: daily ranking reward/#684#686
Merged
Merged
Conversation
Contributor
There was a problem hiding this comment.
Code Review
This pull request implements a daily ranking reward system that grants cookies to the top three users based on their daily experience accumulation. The implementation includes a new native SQL query in the repository, a service layer to process rewards with row-level locking, and a Spring scheduler configured for daily execution. Review feedback suggests enhancing the ranking query to filter out inactive or deleted users and adding a safety check in the reward loop to prevent potential array index out-of-bounds exceptions if configuration constants are modified.
c25100e to
59e06d8
Compare
redjungi09
approved these changes
Apr 15, 2026
# Conflicts: # src/main/java/com/process/clash/domain/common/enums/GoodsActingCategory.java
6b6baae to
efd305b
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
변경사항
user_exp_history테이블에서 특정 날짜의 EXP 합산 상위 N명 조회 쿼리 추가 (SEASON_RESET카테고리 제외)UserExpHistoryRepositoryPort/UserExpHistoryPersistenceAdapter에findTopUserIdsByDailyExp메서드 추가DailyRankingRewardService— 전날 날짜(Asia/Seoul기준 today - 1)로 상위 3명 조회 후 쿠키 지급DailyRankingRewardScheduler—@Scheduled(cron = "0 0 6 * * *", zone = "Asia/Seoul")로 매일 06:00 실행관련 이슈
Closes #684
추가 컨텍스트
minusDays(1))UserAttendanceInitScheduler등)에 영향 없음